<?
require_once("config.php");
function InfoText($text, $paramkey) //Подсчет плотности в тексте
{
/* 	1 пример: вам нужно расчитать, сколько вставить ШТУК ключей (ключевую фразу "купить машину") в текст в 5 000 знаков, если требуется плотность в 5 %.
в ворде считаем количество слов, получается, допустим, 650 слов. делим 650 на 100, умножаем на 5. значит, всего должно быть 33 СЛОВА ключевых. в фразе :"купить машину" - 2 слова, поэтому 33 делим на 2.ответ: 17 раз должна встречаться фраза "купить машину" в тексте из 5 тыс. знаков.округлять лучше в большую сторону.
*/
	global $predlog;
	$count=array();
	$text=iconv("windows-1251","utf-8", $text);
	$lentext=strlen(strip_tags($text)); //символов в тексте
	$key=iconv("windows-1251","utf-8", $paramkey);
	$paramkeys=explode(" ",$paramkey);
	//$key=strtolower($key);
	$key=mb_convert_case($key, MB_CASE_LOWER, "UTF-8");
	//$text=strtolower($text);
	$text=mb_convert_case($text, MB_CASE_LOWER, "UTF-8");
	
	$count[]=array("key"=>$key,"count"=>substr_count($text,$key)); //вхождений всей фразы в текст
	$countWord=0; //Слов в тексте
	
	$words=explode(" ",$text);
	foreach($words as $word) if(strlen($word)>=$predlog && !is_numeric($word)) $countWord++;
	$keys=explode(" ",$key);
	if(1<count($keys))
	{	
		foreach($keys as $word){	
			if(strlen($word)>=$predlog){ 
				$count[]=array("key"=>$word,"count"=>substr_count($text,$word)); //вхождений каждого слова предлоги не считаем
			}
		}
	}
	
	foreach($count as $id=>$val)
	{
		$colWord=($id==0)?count($keys):1;
		$count[$id]['per']=$val['count']*$colWord*100/$countWord; //плотность ключа в тексте
	}
	return array('word'=>$countWord,'count'=>$count);
}
?>
